home *** CD-ROM | disk | FTP | other *** search
/ Aminet 15 / Aminet 15 - Nov 1996.iso / Aminet / dev / misc / libx11inc.lha / X11 / Xm / DropSMgr.h < prev    next >
Encoding:
C/C++ Source or Header  |  1994-02-13  |  4.1 KB  |  145 lines

  1. /* 
  2.  * (c) Copyright 1989, 1990, 1991, 1992 OPEN SOFTWARE FOUNDATION, INC.
  3.  * ALL RIGHTS RESERVED
  4. */ 
  5. /*   $RCSfile: DropSMgr.h,v $ $Revision: 1.33 $ $Date: 92/05/14 12:51:10 $ */
  6. /*
  7. *  (c) Copyright 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
  8. #ifndef _XmDropSMgr_h
  9. #define _XmDropSMgr_h
  10.  
  11. #include <Xm/Xm.h>
  12. #include <Xm/DragC.h>
  13.  
  14. #ifdef __cplusplus
  15. extern "C" {
  16. #endif
  17.  
  18.  
  19. #define XmCR_DROP_SITE_LEAVE_MESSAGE  1
  20. #define XmCR_DROP_SITE_ENTER_MESSAGE  2
  21. #define XmCR_DROP_SITE_MOTION_MESSAGE 3
  22. #define XmCR_DROP_MESSAGE             4
  23.  
  24. #define XmNO_DROP_SITE         1
  25. #define XmINVALID_DROP_SITE    2
  26. #define XmVALID_DROP_SITE    3
  27.  
  28. enum { XmDRAG_UNDER_NONE, XmDRAG_UNDER_PIXMAP,
  29.     XmDRAG_UNDER_SHADOW_IN, XmDRAG_UNDER_SHADOW_OUT,
  30.     XmDRAG_UNDER_HIGHLIGHT };
  31.  
  32. enum { XmDROP_SITE_SIMPLE, XmDROP_SITE_COMPOSITE,
  33.     XmDROP_SITE_SIMPLE_CLIP_ONLY = 128,
  34.     XmDROP_SITE_COMPOSITE_CLIP_ONLY };
  35.  
  36. enum { XmABOVE, XmBELOW };
  37.  
  38. enum { XmDROP_SITE_ACTIVE, XmDROP_SITE_INACTIVE };
  39.  
  40. typedef struct _XmDragProcCallbackStruct {
  41.     int                reason;
  42.     XEvent *        event;
  43.     Time            timeStamp;
  44.     Widget            dragContext;
  45.     Position        x, y;
  46.     unsigned char    dropSiteStatus;
  47.     unsigned char    operation;
  48.     unsigned char    operations;
  49.     Boolean            animate;
  50. } XmDragProcCallbackStruct, * XmDragProcCallback;
  51.  
  52. typedef struct _XmDropProcCallbackStruct {
  53.     int                reason;
  54.     XEvent *        event;
  55.     Time            timeStamp;
  56.     Widget            dragContext;
  57.     Position        x, y;
  58.     unsigned char    dropSiteStatus;
  59.     unsigned char    operation;
  60.     unsigned char    operations;
  61.     unsigned char    dropAction;
  62. } XmDropProcCallbackStruct, * XmDropProcCallback;
  63.  
  64.  
  65. typedef struct _XmDropSiteVisualsRec {
  66.     Pixel    background;
  67.     Pixel    foreground;
  68.     Pixel    topShadowColor;
  69.     Pixmap    topShadowPixmap;
  70.     Pixel    bottomShadowColor;
  71.     Pixmap    bottomShadowPixmap;
  72.     Dimension    shadowThickness;
  73.     Pixel    highlightColor;
  74.     Pixmap    highlightPixmap;
  75.     Dimension    highlightThickness;
  76.     Dimension    borderWidth;
  77. } XmDropSiteVisualsRec, * XmDropSiteVisuals;
  78.  
  79.  
  80. /* DropSite Widget */
  81.  
  82. externalref WidgetClass xmDropSiteManagerObjectClass;
  83.  
  84. typedef struct _XmDropSiteManagerClassRec *XmDropSiteManagerObjectClass;
  85. typedef struct _XmDropSiteManagerRec *XmDropSiteManagerObject;
  86.  
  87. #ifndef XmIsDropSiteManager
  88. #define XmIsDropSiteManager(w)  XtIsSubClass((w), xmDropSiteManagerObjectClass)
  89. #endif /* XmIsDropSite */
  90.  
  91. /********    Public Function Declarations    ********/
  92. #ifdef _NO_PROTO
  93.  
  94. extern void XmDropSiteRegister() ;
  95. extern void XmDropSiteUnregister() ;
  96. extern void XmDropSiteStartUpdate() ;
  97. extern void XmDropSiteUpdate() ;
  98. extern void XmDropSiteEndUpdate() ;
  99. extern void XmDropSiteRetrieve() ;
  100. extern int XmDropSiteQueryStackingOrder() ;
  101. extern void XmDropSiteConfigureStackingOrder() ;
  102. extern XmDropSiteVisuals XmDropSiteGetActiveVisuals() ;
  103.  
  104. #else
  105.  
  106. extern void XmDropSiteRegister( 
  107.                         Widget widget,
  108.                         ArgList args,
  109.                         Cardinal argCount) ;
  110. extern void XmDropSiteUnregister( 
  111.                         Widget widget) ;
  112. extern void XmDropSiteStartUpdate( 
  113.                         Widget refWidget) ;
  114. extern void XmDropSiteUpdate( 
  115.                         Widget enclosingWidget,
  116.                         ArgList args,
  117.                         Cardinal argCount) ;
  118. extern void XmDropSiteEndUpdate( 
  119.                         Widget refWidget) ;
  120. extern void XmDropSiteRetrieve( 
  121.                         Widget enclosingWidget,
  122.                         ArgList args,
  123.                         Cardinal argCount) ;
  124. extern int XmDropSiteQueryStackingOrder( 
  125.                         Widget widget,
  126.                         Widget *parent_rtn,
  127.                         Widget **children_rtn,
  128.                         Cardinal *num_children_rtn) ;
  129. extern void XmDropSiteConfigureStackingOrder( 
  130.                         Widget widget,
  131.                         Widget sibling,
  132.                         Cardinal stack_mode) ;
  133. extern XmDropSiteVisuals XmDropSiteGetActiveVisuals( 
  134.                         Widget widget) ;
  135.  
  136. #endif /* _NO_PROTO */
  137. /********    End Public Function Declarations    ********/
  138.  
  139. #ifdef __cplusplus
  140. }  /* Close scope of 'extern "C"' declaration which encloses file. */
  141. #endif
  142.  
  143. #endif /* _XmDropSMgr_h */
  144. /* DON'T ADD ANYTHING AFTER THIS #endif */
  145.